// APP
if (window.plus) {
    scanPageReady();
} else {
    document.addEventListener('plusready', scanPageReady, false);
}
// Web
$(function() {
    if (AGENT_CLIENT.WEB) {
        scanPageReady();
    }
});

function scanPageReady() {
    var scanPage = function() {
        this.init();
    };
    scanPage.prototype = {
        // 初始化
        init: function() {
            this.bindEvent();
            this.initPage();
        },
        initPage: function() {
            // 开始扫描
            var scan = new plus.barcode.Barcode('scandiv');
            scan.onmarked = this.onmarked;
            scan.start();
        },
        // 绑定事件
        bindEvent: function() {
            var model = this;
            // 返回
            $("#btnback").on("click", function() {
                back();
            });
            // 相册选择
            $("#btnpickphoto").on("click", function() {
                plus.gallery.pick(function(path) {
                    plus.barcode.scan(path, model.onmarked, function(error) {
                        plus.nativeUI.alert("无法识别此图片");
                    });
                }, function(err) {});
            });
            // 扫描历史
            $("#btnhistory").on("click", function() {
                redirect("scanhistory.html", false, "pop-in", function() {
                    if (os.ios) {
                        plus.navigator.setStatusBarBackground("#FEFEFE");
                        plus.navigator.setStatusBarStyle('UIStatusBarStyleDefault');
                    }
                });
            });
            // 关闭重置IOS顶部样式
            plus.webview.currentWebview().addEventListener('close', function() { //页面关闭后可再次打开
                if (os.ios) {
                    plus.navigator.setStatusBarBackground("#FEFEFE");
                    plus.navigator.setStatusBarStyle('UIStatusBarStyleDefault');
                }
            }, false);
        },
        // 获取扫描结果
        onmarked: function(type, result, file) {
            result = result.replace(/\n/g, '').toLocaleLowerCase();
            //商品条形码：长度为13位或14位或16位或18位 字符串，编码方式 Barcode 128 C
            //商品二维码：一个网址，如：http://item.soolife.cn/24035.html  24035：是商品编号
            //订单编码： 长度为19位或20位的字符串 编码方式 Barcode 128C
            //活动二维码：一个网址，如：http://sale.soolife.cn/wmsiWxdimw234y.html
            //注册二维码： http://wap.soolife.cn/view/account/register.html?memberid=
            console.log(result);
            if (type == 16 || type == plus.barcode.CODE128) {
                if ([13, 14, 16, 18].indexOf(result.length) > -1) {
                    // 商品条形码
                    redirect("../goods/goodsdetail.html?id=" + result + "&type=1", false, "pop-in", function() {
                        plus.webview.currentWebview().close("none");
                    });
                } else if ([19, 20].indexOf((result.length) > -1)) {
                    // 订单条形码
                    redirect("../order/detail.html?id=" + result + "&type=3", false, "pop-in", function() {
                        plus.webview.currentWebview().close("none");
                    });
                } else {
                    // 显示扫描内容
                    redirectResultPage(result);
                }
            } else if (type == plus.barcode.QR) {
                var urlExpression = new RegExp('(http|https)://');
								var goodsExpression = new RegExp('^((https|http)?://)(m.soolife.cn\/local\/goods\/detail|item.soolife.cn)/([0-9]*).html$');
                var registerExpression = new RegExp(CONFIG_MANAGER.webSiteUrl + '/view/account/register.html');
                console.log(result);
                if (urlExpression.test(result) == true) {
                    if (goodsExpression.test(result) == true) {
                        // 商品二维码
                        var goodsid = result.match(goodsExpression)[3];
                        if(isNaN(goodsid)){
                        	goodsid = result.match(goodsExpression)[4];
                        }
                        redirect("../goods/goodsdetail.html?id=" + goodsid + "&type=2", false, "pop-in", function() {
                            plus.webview.currentWebview().close("none");
                        });
                    } else if (registerExpression.test(result)) {
                        var registerurl = result.replace(CONFIG_MANAGER.webSiteUrl + '/view', "..");
                        redirect(registerurl, false, "pop-in", function() {
                            plus.webview.currentWebview().close("none");
                        });
                    } else {
                        // 跳转链接地址
                        redirectResultPage(result);
                    }
                } else {
                    // 显示扫描内容
                    redirectResultPage(result);
                }
            } else {
                // 显示扫描内容
                redirectResultPage(result);
            }
            // 跳转扫描结果页
            function redirectResultPage(result) {
                // 跳转链接地址
                setPageParams(PAGE_NAME.barcode_scanresult, result);
                redirect("../barcode/scanresult.html", false, "pop-in", function() {
                    plus.webview.currentWebview().close("none");
                });
            }
        }
    };
    var _scanPage = new scanPage();
}
// 二维码扫描成功

function scanCode(){
	var scanPage = new scanPageReady();
	scanPage.initPage();
}
